SHARP PC-G850V(S) Manual
SHARP
POCKET COMPUTER
MODEL
PC-G850V(S)
User Manual/ Interface
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
Copyright © 2016 spellbound
Version 1.1, 12/2016
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
Appendix A: 11-Pin Interface
Signals and Pin-Out
On the left side of the PC-G850V(S) there is an 11-pin interface intended for
communication with other devices. It is a multi-functional interface, hence it can operate
in different (sub-)modes. The actual mode is selected through operational commands or
menue items of the PC-G850V(S).
1. SIO / RS-232C-mode (e.g. OPEN“ COM: “)
2. SSlO-mode (Synchronous Serial Input/Output)
a. CE-126P print protocol (e.g. LPRINT without preceding OPEN)
b. LPRT-protocol (e.g. OPEN“ LPRT: “)
3. PWM-mode (Pulse Width Modulation)
a. CE-126P tape protocol (e.g. BSAVE/BLOAD with a CE-126P)
b. Generic PWM-protocol (e.g. BSAVE/BLOAD with another PC-G850V)
4. PlO-mode (e.g. OPEN“ PIO:™)
Programmable, 8-bit parallel port interface
5. PlC-mode (activated by the PIC-loader in the assembler menue)
Programming interface for PIC microcontrollers
The association of physical pins to logical signals (called pin-out) as well as the
configured direction for input (I) or output (O) depends on the active mode. The following
table gives an overview. Looking from the left side of the PC-G850V(S) pin-1 is the
leftmost and pin-11 the rightmost.
Pin SIO-Mode SSIO/PWM-Mode PIO-Mode PIC-Mode
# Signal /O_| Signal VO | Signal /O | Signal I/O
1 = ie re = e = =
2 | VCC(+5V) | - VCC(+5V) | - VCC(+5V) | - VCC(+5V) -
3 GND - GND - GND - GND -
4 RTS O_ | BUSY O BitO O | CP O
5 DTR O | DOUT O Bit1 /O | CLK# O
6 RXD | XIN | Bit2 /O | DATAIN |
7 | TXD O | XOUT O Bit3 /O | DATAOUT O
8 |CD | DIN | Bit4 /O |LOWBATT# ||
9 {CTS | ACK | Bit5 /O |-
10 | DSR | EX1 | Bit6 /O |- -
11 | Cl | EX2 | Bit7 /O |- -
The next sections describe the SIO-mode and respective connection options in detail.
The other modes are covered subsequently.
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
SIO-Mode: RS-232 Standard and Conventions
The PC-G850V(S) in SlIO-mode exposes the signals of the RS-232 standard, but with
different voltage levels (see below). This section provides the necessary basics of the
standard and covers some specifics of the PC-G850V(S).
Within the RS-232 standard the terms DTE (Data Terminal Equipment) and DCE (Data
Communication Equipment) are introduced. The DTE is the PC-G850 for example and
the DCE is a modem or another peripheral device, like a serial printer.
Telephone
Male DB25 Female DB2S Line
Interface
[sa _N ~
Se ee le Ee
Daa Daa
Terminal Grcutt aminating
Equipment Equipment
When two computers shall communicate directly (i.e. without a modem), you need a so
called null-modem (cable/adaptor), which connects the outputs of one DTE with the
inputs of the other and vice versa (crossed signals).
Typically 25-pin (Sub-D 25 / DB-25) or 9-pin (Sub-D 9 / DB-9) plugs and jacks are used
to connect RS-232 capable devices.
Sub-D 25 plug (male)
(ff | 5 6 7 8 9 10 11 12 13
}
2 3 4
®@eeseeeeseseesee 0 @
\
eeee2e%s#eseset 8 8
14 15 16 17 18 19 20 21 22 23 24 25
Downloaded from www.Manualslib.com manuals search engine
Sub-D 9 plug (male)
View on the contacts
Sub-D 9 jack (female)
§ 43 2 1
o0o0000
0000
9 6
View on the contacts
PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
The pin-out and meanings are summarized in the following table.
Signal Name Alternative | Direction | Semantics Pin# | Pin#
Name (DTE- DB-9 | DB-25
View)
TXD Transmitted Data SD Out Data from DTE to DCE 3 2
RXD Received Data RD In Data from DCE to DTE 2 3
RTS Request To Send RS Out DTE requests permission 7 4
(Ready To Send) from DCE to send data
RTR Ready To Receive DTE is ready to receive
data from DCE
CTS Clear To Send CS In DCE is ready to receive 8 5
data from DTE
DTR Data Terminal Ready | ER Out DTE interface ready for 4 20
operation
DSR Data Set Ready DR In DCE interface ready for 6 6
operation
CD Carrier Detect In DCE detects remote DCE 1 8
(e.g. telephone line)
Cl Call Indicator Rl In Call of a remote DCE 9 22
GND Signal Ground SG None Signal-ground (reference) 5 7
FG Frame Ground PG None Shield - 1
Remark:
In the late 1980’s there was a shift in the meaning of the RTS-signal:
Originally the DTE (computer) requests the DCE (modem) for permission that the DTE
may send data - and the DCE “answeres” via CTS. But this protocol is asymmetric
because the DTE has no means to notify the DCE to wait for internal computations when
the DCE sends data. For this reason “Request To Send” was re-claimed: The DTE
requests the DCE to send data — or in other words, the DTE is “Ready To Receive”
(RTR). RTR and CTS are now independent of each other and the protocol between DTE
and DCE is symmetric. But in most cases the name “Request To Send” (RTS) was kept,
hence it is fairly ambiguous.
The PC-G850V(S) implements the newer, symmetric RTR-semantics (but the signal
name RTS has been kept). This is in contrast to the preceding pocket computer model
PC-E500(S), which implements the original RTS meaning and therefor needs the
XON/XOFF-protocol in addition, when it reads data/programs from a PC. The PC-
G850V(S) sets the DTR-signal to HIGH, when the SlO-interface is active, but it does not
care about the DSR-input. So there is no DTR/DSR-handshake. The RTS/CTS-
handshake, or alternatively the XON/XOFF-protocol can be configured in the
TEXT/Sio/Format-submenue by the item "flow".
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
S1O-Mode: Signal Levels
The next table summarizes the logic- and voltage-levels of the RS-232 standard in
comparison with UART-TTL and the PC-G850V(S).
Logic | Voltage level | Semantics for data Semantics for
level signals (RXD,TXD) control signals
(RTS,CTS, etc.)
RS-232 LOW -15V to -3V 1 (Mark), Idle, Stop Inactive
HIGH | +3Vto+15V_ | 0 (Space), Start Active
UART-TTL LOW OV 0 (Space), Start Active
HIGH | +3,3V/+5V 1 (Mark), Idle, Stop Inactive
PC-G850V(S) | LOW OV 1 (Mark), Idle, Stop Inactive
HIGH | 5V 0 (Space), Start Active
So the PC-G850V(S) exposes inverted UART-TTL level signals in SIO-mode, just as
most other SHARP pocket computers do. That means the logic is identical to the RS-232
standard (HIGH=0/active), but the voltage level is TTL.
> In order to connect peripheral devices with the PC-G850V(S) that operate at
RS-232 voltage levels, a level converter is mandatory!
The state of the TXD- and RTS-signals in SlO-mode is undefined, except for the
following cases:
1. The interface has explicitly been opened in SlO-mode (e.g. OPEN“ COM: “) when in
operational main mode “BASIC”.
2. R- or W-commands are executed in operational main mode “Monitor”.
3. Data transfer via SIO in operational main mode “TEXT”.
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
SI1O-Mode: Data Transfer Cable CE-T800 and CE-T801
The data transfer cables CE-T800 and CE-T801 are RS-232 level converters with an
integrated null-modem wiring. They can be used to connect the PC-G850V(S) to a
personal computer (PC) or other devices.
With these cables you can transfer data, program source-code or machine language
programs from or to a PC by using the TEXT/Sio-submenue or the SIO-commands (R,
W) of the integrated hex-monitor (MON). The DB-25 plug of the cable can be connected
directly to a PC (if necessary via a DB-9 adaptor), when there is a physical COM port.
Alternatively it can be connected to a USB-port through an additional serial-to-USB
adaptor. Don't use a null-modem adaptor or wiring for a PC-connection (because it's
already integrated in the cable).
However if a peripheral RS-232 device like the 4-color plotter CE-515P shall be
connected, a null-modem adaptor/wiring is mandatory in order to compensate the
integrated one.
CE-T801
| ©
!
ToPC qua | o.
—
Pin-6 and pin-20 are interconnected
On the CE-T800 pins 6 and 20 are not connected, pin 11 is not connected on both
models (CE-T800 and CE-T801).
Attention: Never touch the pins of the DB-25 plug. Static electricity may be harmful for the
circuits.
A free working area of about 300bytes is required for data transfer from a PC.
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
S1O-Mode: USB PC-Adaptor Cable with Hardware-Handshake
An elegant, hence powerful DIY-alternative for the connection of the PC-G850V(S) with a
modern PC is based on a pre-built USB-UART adaptor cable with open endings.
Specification:
FTDI USB-UART/TTL adaptor cable based on FT232R-chip, 5V, 6 pins
(GND,5V,RXD,TXD,RTS,CTS)
For physical connection with the 11-pin interface of the PC-G850V a common multi-pin-
connector with 2.54mm spacing can be used. You need to solder the UART-lines of
adaptor to the multi-pin-connector by using a null-modem wiring then:
FTDI-UART PC-G850V(S)
Signal (Color) Signal (Pin)
GND (black) GND (3)
RXD (yellow) TXD (7)
TXD (orange) RXD (6)
CTS (brown) RTS (4)
RTS (green) CTS (9)
VCC (red) -
Additionally there should be a 10kKOhm resistor between pin-4 and pin-3 of the multi-pin-
connector. It serves as a pulldown for the RTS-signal, to get a defined LOW level.
Without it, you might experience I/O-errors when transferring data from a PC to the PC-
G850V(S), because the PC may not receive wait requests from the pocket computer.
Finally you have to download the tool FT_PROG from the website of the manufacturer:
www. ftdichip.com. With this tool you must logically invert the signals RXD, TXD, RTS and
CTS of the FTDI-chip, because the SlO-mode (RS-232 interface) of the PC-G850V(S)
operates on inverted UART-logic (see above). This is a one-off process and the settings
are persisted within the integrated EEPROM of the FTDI-chip.
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
SIO-Mode: RS-232 Printer
With the SIO-mode you can also make use of printers that provide an RS-232 interface,
like the 4-color plotter CE-515P or CE-516P.
Do not connect an RS-232-printer to the PC-G850V(S) without a voltage level converter!
The data transfer cable/converter CE-T800/801 can be used in combination with a null-
modem wiring or adaptor. To connect the CE-515P/516P via RS-232 a DIN-4 plug is
needed. The correct wiring (inluding null-modem) is as follows:
DIN-4 Plug CE-T800/1 DB-25 Plug
Pin# | Signal Pin# | Signal
1 +12V - -
2 BUSY# 4 RTS
3 GND 7 GND
4 DATA# 3 RXD
DIN-4 plug, view on the pins
Be sure to have the DIP-switches on the back side of the CE-515P/516P configured
correctly (see printer manual for details).
Furthermore you have to adopt the RS-232 parameters in the TEXT/Sio/Format sub-
menue of the PC-G850V(S) in order to get a connection with the CE-515P:
e baudrate =1200
e data bit =8
e stop bit = 1
e parity = none
e endofline =CR
e flow =RS/CS
Now, to actually direct outputs to a RS-232-printer, you have to open the 11-pin interface
explicitely in SlO-mode (OPEN“COM: “) — and close it after use (CLOSE). Character-
strings and control codes are transmitted via the PRINT#1,“...” Command in
between.
OPEN“COM: “
PRINT#1, “HELLO WORLD™
CLOSE
The commands LPRINT, LLIST, LFILES however are not routed to the 11-pin interface
in SlIO-mode.
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
SSIO-Mode
The SSIO-mode serves for the purpose of synchronous serial data transfer — in contrast
to the asynchronous serial data transfer of the SIO-mode. “Synchronous” means, that the
sender provides an additional strobe/clock signal, to which the receiver aligns. This
makes an explicit baud-rate obsolete, to which both sides have to be configured in SIO-
mode. Hence the settings of the TEXT/Sio/Format-submenue are irrelevant in SSIO-
mode.
The SSIO-mode provides different submodes resp. protocols.
SSIO-Mode: CE-126P Print Protocol
This is the default protocol for the 11-pin interface of the PC-G850V(S). It is the protocol
for the printer CE-126P and it is active if and only if there is no other (sub-)mode
selected. The commands LPRINT, LLIST and LFILES are routed to the printer in this
mode.
The integrated cassette interface of the CE-126P can also be used by the PC-G850V(S)
and the respective protocol shares the handshake with the print protocol, but it uses
PWM for data transfer instead of SSIO (see below).
The pin-out and signal semantics within the CE-126P print protocol is as follows:
Pin | Signal Direction | Semantics
#
4 BUSY Out Clock pulse for synchronous, serial data transmission
5 DOUT Out Data line
6 XIN In No function
7 | XOUT Out HIGH: CE-126P sub-device select (i.e. printer vs.
cassette interface) resp. command transfer
LOW: Idle or data transmission
8 DIN In No function
9 | ACK In CE-126P ready to receive data or commands
(handshake)
10 | EX1 In No function
11 | EX2 In No function
10
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
The following diagram shows the signal timing for the command LPRINT"X" with the CE-
126P connected:
I 40.15 4025 +035 2045 4055 +065 +4075
Sf IE m WO. m
_. J oT Le MLL r
cae OF
bedi cos a
04)| Da +f
inal Je Mm an a |
pea i Ot
gee |
The PC-G850V(S) is waiting for ACK going HIGH before BUSY is set to HIGH for each
clock pulse. This synchronous, serial protocol is also used by the CE-126P interface of
the PC-E500(S).
SSIO-Mode: LPRT-Protocol and Mini-I/O Port
The mini-l/O port of the PC-G850V(S) is just a logical grouping of the six main signals of
the SSIO-mode into two groups, three signals/bits each:
e Mini-I/O output-port (3-bit)
o XOUT (bit-0)
o DOUT(bit-1)
o BUSY (bit-2)
e Mini-I/O input-port (3-bit)
o ACK (bit-0)
o DIN (bit-1)
o XIN (bit-2)
The bits of the mini-I/O port can be controlled explicitly via the functions
OUT/miniput () and INP/miniget (), so that e.g. custom communication protocols
can be implemented on that basis.
Besides that, the PC-G850V(S) provides a synchronous, serial protocol for data transfer
to a respective peripheral device. In order to enable that, the 11-pin interface must be
opened with the command OPEN (“LPRT:™“). The data-streams of the commands
LPRINT, LLIST and LFILES are then sent over this protocol using ASCII code.
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
The signal semantics of the LPRT-protocol is as follows:
Pin | Signal Direction | Semantics
#
4 BUSY Out Frame-indicator for each transmitted byte
5 DOUT Out Data line
7 XOUT Out Clock pulse with pause after each byte
9 | ACK In LOW: Receiver ready
HIGH: PC-G850V(S) must wait
The next diagram shows the signal timings:
0s -300 ms
00 BUSY @ oF |
a =! use LSB
03 XOUT @ +f |
Frame 1 Frame 2 Frame 3
Data is transferred byte-wise with MSB-first. DOUT is valid at the rising edge of the clock
pulse. The BUSY-signal provides an additional reference frame for each byte.
PWM-Mode: CE-126P Tape Protocol
This protocol is activated by the commands BSAVE, BSAVEM, BLOAD, BLOADM,
BLOAD? when a CE-126P (or compatible cassette interface) is attached in order to store,
load or verify BASIC programs or binary data sections (e.g. machine language programs)
to / from a tape recorder like the CE-152.
The protocol includes the SSIO-handshake of the CE-126P printer protocol but the actual
data transfer is realized via pulse width modulation (the digital equivalent of analog
waveforms). So it’s a kind of mixed SSIO/PWM-protocol.
12
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
This is the signal-semantics within the CE-126P tape protocol:
Pin | Signal Direction | Semantics
#
4 BUSY Out Clock pulse for synchronous, serial handshake
Sj DOUT Out Data line for handshake
6 | XIN In PWM data from the cassette interface (load)
7 XOUT Out Handshake: See CE-126P printer protocol
Data: PWM transfer to the cassette interface (save)
8 DIN In No function
ACK In CE-126P ready to receive data or commands
(handshake)
The following diagram shows the signal timing of the CE-126P tape protocol for a
BSAVE-operation (saving a BASIC-program with only one line):
00 ‘Busy
our 2 =| | ne] |
04 DIN oF |
=| LA ri
"300 ms “Os -300 ms a
+10 ms +20 ms +30 ms +40 ms +50 ms +60 ms +70 ms +80 ms +90 ms +10 ms +20 ms +30 +10 ms +20 ms +30 ms
01 DOUT Ot ll
02 XIN oe +f |
i Je] SS
04 DIN a TF |
05 ACK Re O+F
CE-126P Handshake PWM Data Transfer
The dynamics for a BLOAD-operation is equivalent, but the PWM-data is received
through the XIN-signal then.
PWM-Mode: Generic PWM-Protocol
This protocol is equal to the CE-126P tape protocol reduced to XOUT and XIN. It is
activated by the commands BSAVE, BSAVEM, BLOAD, BLOADM, BLOAD? when no
CE-126P (or compatible cassette interface) is connected. Typically this would be the
case, if two PC-G850V(S) are directly interconnected by a cross-wired cable like the EA-
129C. The PC-G850V(S) distinguishes the activation of the CE-126P tape protocol from
the generic PWM protocol by setting XOUT to HIGH as the very first action for a
BSAVE/BLOAD-command: If ACK is not going HIGH then, the generic PWM-protocol is
used (i.e. BUSY/DOUT/ ACK handshake being skipped).
13
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
PIO-Mode
The PlO-mode is primarily intended for the purpose of controlling external digital
hardware, rather than for data communication with other devices. With this mode you
change the pocket computer into a microcontroller with an on-board development
environment.
The 11-pin interface becomes a programmable 8-bit port. The logic levels (LOW/HIGH)
can be set and read by the PIO-API (API = Application Programming Interface) in BASIC
or C. Each of the 8 signals/bits can be configured individually to serve as input or output.
The direction can be set by the function pioset/PIOSET (see command reference).
The function pioput/PIOPUT sets the individual logic levels of each signal by setting
the respective bit to 0 (=LOW) or 1 (=HIGH). Signals that were configured as input are
ignored then. The function pioget/PIOGET reads all 8 logic levels of the port into one
byte.
In order to demonstrate the PlO-mode usage, here is a very simple example:
Pin#3
BitO (Output)
Bit1 (Input)
\ZS& LED (red) PC-G850V(S)
11-pin
Interface
GND (OV)
In this example bit-0/pin-4 is an output, which lights up an LED when it is in the HIGH
(logic 1) state. Bit-1/pin-5 on the other hand serves as an input that represents the state
of a push button switch. An open input (i.e. undefined level) is internally pulled down and
thus interpreted as logic 0. This is the case, if the push button is open. In order to
distinguish that state from the closed state, the push button is connected to VCC (i.e.
HIGH/logic 1) on the other side and not to GND.
Let the goal of the “microcontroller’-code be to switch on the LED by the first button-click
and to switch it off again by the next button-click (and so on). Let us use the
programming language C for this example — BASIC would be similar, but less structured.
14
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
The following C-program implements these requirements:
1 #define BOOL char
2 #define TRUE 1
3 #define FALSE 0
4 #define BIN 0x02
5
6 char BTNstate = 0;
a char LEDstate = 0;
9
10 BOOL setupPIO() {
aa if(!fopen("pio","at")) {
12 printt (“ean'tL apen port \n");
13 return FALSE;
14 }
15 pioset (BTN) ;
16 return TRUE;
17}
19
20 BOOL pressed() {
21 BOOL rtn=FALSE;
22 char btn;
23 btn=pioget () &BTN;
24 if(btn && BTNstate==0)
25 rtn=TRUE;
26 BTNstate=btn;
2d return rtn;
28 }
29
30 toggleLED() {
SL LEDsState=!LEDstate;
32 printf ("LED=%x\n",LEDstate) ;
33 pioput (LEDstate) ;
34 }
39
main() f
Brine’ ("PIO test wn") =
if (!'setupPIO())
abort ();
while(TRUE) {
if (pressed()) {
printf ("button pressed\n") ;
toggleLED ();
}
}
}
COO WOANDUNBRWNEF OO
FC SS 1 OS |S a Ss OS
To enter the symbol '\' press GHIED-G in TEXT-Mode. It is displayed as ¥.
15
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
Comments on the code:
e Line 4: Bit-mask for bit-1 (O0b00000010), i.e. push button input
Line 6: Global state variable for the push button
Line 7: Global state variable for the LED
Line 11: The interface is opened in PlO-mode for read and write.
Line 15: Configure bit-1 / pin-5 as input. All other signals are outputs.
Line 20: This function detects the transition from bit-1 = 0 to bit-1 = 1, i.e. the close
event of the push button.
e Line 23: The PlO-port is read and all bits are masked out, except bit-1.
e Line 30: This function changes the state of the LED.
e Line 33: The new LED-state (bit-0) is written to the port.
Unused outputs are set to 0.
e Line 104: Main-loop, abort by ON/BREAkK-key.
The following images show an experimental setup and the respective trace outputs on
the display of the PC-G850V.
GRAPHIC
PUTER PC-GBsOV — C-LNNGUAGE
re ie (A VS) Ud Ce Ve
CRS) (A) ES) (DEG) Es eK ie
SHAM Z
GRAPHIC
Gasov — C-LANGUAGE
Oe
i) (ey i) a} 3 0) 08 14) U9 1) (2)
Cs oe Vee Val ed Vad Lo Ue US)
Sm 2 xX CV B WN M ®
16
Downloaded from www.Manualslib.com manuals search engine
PIC-Mode
The PIC-mode of the PC-G850V(S) is used for the transfer of an assembled PIC-
program to a PIC microcontroller. This process is called PIC-programming, PIC-program
(up)loading or PIC-burning, since a specific “burning” voltage is needed that is much
higher than normal operating voltage. This mode is activated by the PIC-loader menue
item in the PIC-assembler sub-menue only. The PC-G850V(S) supports the ICSP-
protocol (In-Circuit Serial Programming) of the PIC16F8x microcontroller family and
compatible models.
The pin-out and signal semantics of the 11-pin interface in PIC-mode is as follows:
Pin | Signal Direction
#
Semantics
4 |CP Out
This signal controls the |CSP-programming mode of the
PIC. If this signal is HIGH, the burning voltage (+12 to
+14V) must be provided at the MCLR#-pin of the PIC.
If this signal is LOW, the MCLR#-pin must be at GND-
level or VDD (+5V).
5 | CLK# Out
This signal provides the ICSP-clock-pulse for the PIC to
be programmed. However the inverted CLK# (i.e. CLK)
signal must be provided at the RB6-input-pin of the PIC.
The latter latches data bits on the falling edge of that
CLK-pulse.
6 | DATAIN
n
This input must be connected with the RB7-pin of the
PIC. Data is read from the PIC over this line for
verification of the programming process.
7 | DATAOUT | Out
This output is used for serial data and command transfer
to the PIC in ICSP-mode. It has to be connected with the
RB7-pin of the PIC too.
8 | LOWBATT#
n
This digital input can be connected to a programming
voltage monitoring circuit (esp. when using an external
supply). LOW (logic 0) means ,,weak voltage supply“.
Due to the specification of the PIC16F8x family, the PIC performs a transition to ICSP-
mode, if and only if all of the following conditions are true:
VDD = +5V, VSS = GND
MCLR# = +12V to +14V
RB6 (CLK) = LOW.
RB7 (DATA) = LOW.
Downloaded from www.Manualslib.com manuals search engine
I7
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
The following image shows the pin-out of a PIC16F84A as a representative:
RAZ ae} ® ~~ fe» RAI
RAS +—+ [7 Tt] «—» RAO
ia] «— OSC1/CLKIN
HCLR —+ = fa] —r OSC2/CLKOUT
¥ss —> & & 4] =— ‘op
RBO/INT +—+ = fs] -—+ RB?
RBI «—> 17) = —sfy+—» RBs
RB2 +—» Ef i «—» RBS
TOP ¥IEW
The PIC-loader of the PC-G850V(S) supports the ICSP-protocol as stated above, but
preceding to that there is a connection test phase. If it fails, the programming process
stops and the message Connection error! is shown on the display.
In order to get into more details of the PIC-loader dynamics, we take a minimalistic
example code for the PIC16F84A. It just consists of the configuration word and an infinite
loop without body:
10 #include "“pl6f84a.inc”
20 config Ox3ff6
30loop goto loop
The PIC-assembler compiles this source code into a PIC machine language program
with only one PIC-word (14-bit). The next diagram shows the phases of a successful
burning process controlled by the integrated PIC-loader of the PC-G850V(S):
I +10 ms +20 ms +30 ms +40 ms +50 ms +60 ms +70 ms +80 ms
| eae I
8
iz)
&
| oo] a)
a
2a:Writé 2b:Verify 2c:Incr 2d:Config 2e:Verify Config
1:Connection Test 2:Programming
CLK was strobed at the RB6-input of the PIC (i.e. the already inverted CLK# signal). DATA was stobed at
the RB7-pin. CP directly controls the programming voltage at the MCLR#-pin.
18
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
1. Connection test: The PC-G850V(S) sets DATAOUT to HIGH and checks, whether
DATAIN is going HIGH as well. So both signals have to be connected, otherwise
the ICSP-protocol will not be activated!
2. This is the ICSP-phase, entered by MCLR# = 12,5V, CLK = LOW, DATA = LOW.
a. Writing the assembled 14-bit word (PIC-op-code)
b. Verification (read) of the last programmed PIC-op-code
c. Increment the PIC program counter. If the PIC-program consisted of more
than one word, there would be a 2a/b/c loop for every other word.
d. Writing the PIC-configuration word
e. Verification of the PlC-configuration word
This diagram is a zoom-in of phase 2a:
1 Olm 02m 03m o4m 405m 06m 07m 0.8m
00 cP a +f
01 MCLR oF |
02 CLK o FF || l
spe —— | LSB MSB_ Start LSB MSB|Stop__LSB MSB
1:0x02 | 2: 0x2800 | | 3: 0x08
PIC-ICSP commands are 6-bit wide (see specification of your PIC). A command can be followed by a data
word — writing or reading. Data words are 14-bit wide, but they are framed by a start- and a stop-bit, so that
there are 16-bit in total. Transmission is done always with the least significant bit first (LSB-first). All bits are
latched/provided at the falling edge of the CLK-pulse, as already mentioned.
—
PIC-ICSP command ,,Load Data for Program Memory“ (0x02).
2. Data transmission for the ,Load Data for Program Memory“-command. So in this
example the 14-bit op-code compiled by the PIC-assembler is 0x2800.
3. PIC-ICSP command ,Beginn Programming Cycle“ (0x08). This command has no
data parameter and starts the PIC-internal burning process for the latched 14-bit
word.
19
Downloaded from www.Manualslib.com manuals search engine
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
Now an appropriate PlC-burner circuit for the 11-pin interface of the PC-G850V(S) is
needed, that utilizes the integrated PIC-loader and supports the PIC16F8x
microcontroller family. Such a circuit must match the follwing criteria at least:
1. The CP-signal must control the programming/burning voltage for the PIC.
2.
phase.
The inverted CLK#-signal must be provided at the RB6-pin of the PIC.
The CLK#-signal is very sensitive for cross-talk — especially from DATOUT.
Shielding and/or elemination of interference can be necessary. Furthermore a
pulldown resistor is needed for a defined LOW-level of the CLK#-signal.
The LOWBATT# input must either be connected to a programming voltage
monitoring circuit or pulled up to the HIGH-level.
DATAIN and DATAOUT must be interconnected already for the connection-test
The following circuit meets these requirements. An additional feature is that it does not
need an external power supply providing the programming voltage, but it creates this via
a DC/DC-converter from VDD (+5V):
VPP
5
DATA |+# ¢
Cc +
R5
LED RED
D3
10K
T2
TOK
R8
10K
5
2,2uE
10K
ICSP Socket
PIC16F8x
R4
10K
T3
10K
LOWBATT#
| col oof ~f of of al
il
S|
1
SHARP PC-G850V
A +5V to +12V DC/DC-converter like the TMA0512C (or ~D) can be used to provide the burning voltage.
The CP-signal controls this as VPP for the MCLR#-pin through the transistors T1 and T2. The LED serves
as an indicator for |CSP-mode. T3 and R8 are inverting the CLK#-signal which then is connected as CLK to
the PICs RB6. C2 (as a low-pass filter) works for interference elemination at the CLK-signal if necessary.
The low voltage indicator only raises an exception, if the operation voltage supply falls below the LOW-
threshold (i.e. logic 0) during the programming phase.
Downloaded from www.Manualslib.com manuals search engine
20
SHARP PC-G850V(S) User Manual - Appendix A: 11-Pin Interface
In order to test the complete PIC programming process with the PC-G850V(S), the
following, quite simple PIC-program can be used. It flashes an LED that is connected to
the RB1-pin:
10 #include "pl6f84a.inc"
20 config Ox3ffl ;CP_OFF & PWRT_ON & WDT OFF & XT OSC
30DELAY1 equ 0x08 ;delay counter 1
40DELAY2 equ 0x09 ;delay counter 2
50 org O
99
100start
110 bsf STATUS,RPO ;change to bank 1
120 bef TRISB,1 ;enable RB1 for output
130 bcf STATUS,RPO ;back to bank 0
1401loop
150 bsf PORTB,1 ;RB1=1,LED=on
160 call delay
170 bef PORTB,1 ;RB1=0,LED=off
180 call delay
190 goto loop
299
300delay
310 movilw 255
320 movwf DELAY1
330 movwf DELAY2
340dloop
350 decfsz DELAYI,f£
360 goto dloop
370 decfsz DELAY2,f£
380 goto dloop
390 return
Enter this source code in TEXT-mode and compile it with the PIC-assembler. Now
connect a PIC16F84A with the PIlC-burner circuit from above (or equivalent) to the 11-pin
interface of the PC-G850V(S). Finally activate the PIC-loader from the PIC-assembler
sub-menue.
ZL
Downloaded from www.Manualslib.com manuals search engine
r Vianual- Appendix A: 11-Pin Interface
After successful program upload, decouple the PIC from the burner circuit and install it
within the following test circuit:
[__] 3,69MHz
This test circuit utilizes an external quarz < 4MHz as a clock. That corresponds to the
setting of XT_OSC within the configuration word (Ox3FF1) of the sample program (see
specification of the PIC16F84A).
If the PIC has been programmed correctly, the LED will start flashing as soon as a power
source (+5V) is connected to the test circuit. The push button switch is optional and
brings the PIC into RESET-state when pressed (MCLR#=LOW). Program execution is
halted then, so the LED is permanently off. The flash frequency can be influenced via
quarz-frequency selection (hardware) or by changing the number of iterations of the outer
delay loop (software) in line 310 of the sample program, range 1..255.
Ae
Downloaded from www.Manualslib.com manuals search engine